package tech.aistar.day04;

/**
 * 本类用来演示: 数组的拷贝的方式
 *
 * @author: success
 * @date: 2021/3/9 10:20 上午
 */
public class ArrayCopyDemo {
    public static void main(String[] args) {
        int[] arr = {1,2,3};

//        int[] temp = new int[arr.length+3];
//
//        //调用数组拷贝的方式...
//        System.arraycopy(arr,0,temp,1,3);
//
//        for (int i = 0; i < arr.length; i++) {//arr不变的
//            System.out.println(arr[i]);
//        }
    }

    /**
     * 数组的拷贝方式一
     * static void	arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
     * 											将指定源数组中的数组从指定位置复制到目标数组的指定位置。
     * 参数
     * src - 源数组。
     * srcPos - 源数组中的起始位置。
     * dest - 目标数组。
     * destPos - 目的地数据中的起始位置。
     * length - 要复制的数组元素的数量。
     * @param arr
     * @return
     */
    public static int[] copySystem(int[] arr){
        int[] temp = new int[arr.length];
        System.arraycopy(arr,0,temp,0,arr.length);
        return temp;
    }
}
